package com.CRApp.pojo;

import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 订单实体类
 * 对应数据库中的orders表
 */
@Data
public class Order {
    /**
     * 订单ID，自增主键
     */
    private Integer ordersId;
    
    /**
     * 订单编号，全局唯一
     */
    private String orderNumber;
    
    /**
     * 地址ID，关联地址表
     */
    private Integer addressesId;
    
    /**
     * 用户ID，关联用户表
     */
    private Integer userId;
    
    /**
     * 商品ID，关联商品表
     */
    private Integer productId;
    
    /**
     * 商品名称，冗余存储
     */
    private String productName;
    
    /**
     * 购买数量
     */
    private Integer quantity;
    
    /**
     * 商品价格，冗余存储
     */
    private BigDecimal productPrice;
    
    /**
     * 订单总价
     */
    private BigDecimal totalPrice;
    
    /**
     * 订单状态：pending(待支付)，paid(已支付)，shipped(已发货)，delivered(已送达)，canceled(已取消)
     */
    private String status;
    
    /**
     * 订单创建时间
     */
    private LocalDateTime createdAt;
    
    /**
     * 收件人姓名，冗余存储
     */
    private String recipientName;
    
    /**
     * 收件人电话，冗余存储
     */
    private String phone;
    
    /**
     * 收件地址，冗余存储
     */
    private String address;
    
    /**
     * 商品图片URL
     */
    private String productImageUrl;
} 